#ifndef PROGRAMEXECUTE_H
#define PROGRAMEXECUTE_H

#include <defs/export.h>
#include <defs/global.h>

#include <QtCore>

O_PRIVATE_DECLARE(ProgramExecute);
class ProgramExecute : public QObject {
    Q_OBJECT
public:
	ProgramExecute(QObject *parent = 0);
	~ProgramExecute();
	void setup(const QString& host, qint16 port = 0);
	void execute(const QString& program);

signals:
	void result(const QString& res);
protected:
	void connectHost();
	void reconnect();
	void close();
private:
    O_PRIVATE_DECLARE_MEMBER(ProgramExecute);
};

#endif // PROGRAMEXECUTE_H

